/**
 * 自动生成！请勿修改！
 */
import { command } from '../core/command';

class Atomizer {
    constructor(opt = {}) {
        const { device, to, ...opts } = opt;

        this.device = device || {};
        this.opts = opts || {};
        this._to = to;
    }

    get categoryCode() {
        return '030010003';
    }

    get categoryName() {
        return '\u96fe\u5316\u5668';
    }

    getIntervalSprayDuration(params) {
        return command({
            method: 'getIntervalSprayDuration',
            methodId: 'phpvP8Po',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getIntervalSprayStopTime(params) {
        return command({
            method: 'getIntervalSprayStopTime',
            methodId: 'pt9feWnR',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSprayMode(params) {
        return command({
            method: 'getSprayMode',
            methodId: 'pDVMdJGk',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSpraySwitch(params) {
        return command({
            method: 'getSpraySwitch',
            methodId: 'pgtWC2d1',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTimerSwitch(params) {
        return command({
            method: 'getTimerSwitch',
            methodId: 'pdcp4z8W',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTiming(params) {
        return command({
            method: 'getTiming',
            methodId: 'p33IDIHz',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setIntervalSprayDuration(params) {
        return command({
            method: 'setIntervalSprayDuration',
            methodId: 'pUr9sLjG',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setIntervalSprayStopTime(params) {
        return command({
            method: 'setIntervalSprayStopTime',
            methodId: 'pZh2cvax',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSprayMode(params) {
        return command({
            method: 'setSprayMode',
            methodId: 'pe2j6dDV',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSpraySwitch(params) {
        return command({
            method: 'setSpraySwitch',
            methodId: 'ppvm0ZT3',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTimerSwitch(params) {
        return command({
            method: 'setTimerSwitch',
            methodId: 'pGEiGN6b',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTiming(params) {
        return command({
            method: 'setTiming',
            methodId: 'p18tSToq',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }
}

export default Atomizer;
